草庐IT

java - 具有占位符属性的 GWT SuggestBox

全部标签

ruby-on-rails - Rails 3 动态添加虚拟属性

我的设置:Rails3.0.9、Ruby1.9.2我这样做有我的理由,但我需要的是一种将虚拟属性动态添加到activerecord结果集的方法。这意味着我没有在模型中使用attr_accessor,而是希望将虚拟属性动态添加到结果集中。例如,users=User.all#auserhasfollowingattributes:name,email,password我喜欢做的是说添加(不使用attr_accessor)虚拟属性status到users,这可能吗? 最佳答案 你应该这样做:users.eachdo|user|user.i

ruby-on-rails - 具有相同名称的类和模块 - 如何选择一个或另一个?

我遇到过以下情况:有ModuleA::ModuleB::ClassC.do_something在do_something的定义中我需要使用来自应用程序的模型defdo_something...data=Order.all...end但是也存在一个模块ModuleA::Order所以我得到一个错误undefinedmethod`all'forModuleA::Order:Module我通过做找到了解决方案defdo_something...data=Kernel.const_get('Order').all...end返回模型。我的问题是:最好的方法是什么?有没有更清洁的解决方案?(尽管

ruby-on-rails - 为没有 `attr_accessor` 的 Rails 模型设置非数据库属性

在PHP中,我可以为模型设置一个属性(不是数据库中的列)。例如(PHP代码),$user=newUser;$user->flag=true;但在Rails中,当我设置数据库中不存在的任何属性时,它会抛出错误undefinedmethodflag。有attr_accessor方法,但是如果我需要大约十个临时属性会怎样? 最佳答案 butwhatwillhappenifIneedabouttentempattributes?#app/models/user.rbclassUserattr_accessor创建"virtual"attri

ruby-on-rails - 使用字符串属性键而不是符号的 Factory Girl?

当我调用Factory.attributes_for(:some_class)时,我显然得到了该类的属性散列。{:attribute_one=>"hello",:attribute_two=>"goodbye"}有没有一种方便的方法来使用字符串键而不是符号来检索此属性散列?{"attribute_one"=>"hello","attribute_two"=>"goodbye"} 最佳答案 xdazz的答案是一个不错的选择,但如果您想实际将键转换为字符串而不是无动于衷地访问哈希,您可以使用stringify_keysFactory.a

ruby-on-rails - 如何从(YAML)哈希中递归删除所有具有空值的键?

我一直在尝试删除我的YAML文件中所有具有空(空白)值或空哈希作为值的哈希键。这earlierpost帮助我几乎正确地完成了它,但是只要有足够深的嵌套,递归的单行代码就会在我的YAML转储中留下空哈希值。我非常感谢任何帮助。谢谢!proc=Proc.new{|k,v|(v.kind_of?(Hash)&&!v.empty?)?(v.delete_if(&proc);nil):v.blank?}hash={"x"=>{"m"=>{"n"=>{}}},'y'=>'content'}hash.delete_if(&proc)实际输出{"x"=>{"m"=>{}},"y"=>"content"

ruby - 使用 attr_accessor 动态创建类属性

在Ruby中,有没有办法动态地向类中添加实例变量?例如:classMyClassdefinitializecreate_attribute("name")enddefcreate_attribute(name)attr_accessorname.to_symendendo=MyClass.newo.name="Bob"o.name 最佳答案 一种方法(还有其他方法)是这样使用instance_variable_set和instance_variable_get:classTestdefcreate_method(name,&bloc

Ruby:如何生成具有 Excel 友好编码的 CSV 文件

我正在生成CSV文件,这些文件生成后需要在Excel中打开和查看。Excel似乎需要与UTF-8不同的编码。这是我的配置和生成代码:csv_config={col_sep:";",row_sep:"\n",encoding:Encoding::UTF_8}csv_string=CSV.generate(csv_config)do|csv|csv在Excel中打开时,特殊字符显示不正确:TextaTextbTextæTextøTextÃ¥知道如何确保正确编码吗? 最佳答案 如果Excel具有BOM,则它可以理解UTF-8CSV。可

ruby-on-rails - 如何按 created_at 属性对集合进行排序

我正在使用RubyonRails2.3.8,我有一个从其他两个集合构建的集合,如下所示:@coll1=Model1.all@coll2=Model2.all@coll=@coll1现在,我想按子孙顺序按created_at属性对该集合进行排序。所以,我做了以下事情:@sorted_coll=@coll.sort{|a,b|b.created_ata.created_at}我有以下异常:undefinedmethod`created_at'for#甚至认为它存在于那些模型中。谁能帮帮我吗? 最佳答案 您将另一个数组作为另一个元素插入@

ruby-on-rails - 使用 rspec 测试具有子域约束的​​路由

我在使用子域约束进行rspec路由测试时遇到问题。特别是我有一条路线constraints:subdomain=>"api"doresources:sign_ups,:only=>[:create]end和(除其他外)测试it"doesallowcreationofsignups"do{:post=>"/sign_ups"}.shouldroute_to(:controller=>"sign_ups",:action=>"create",)end如果我删除子域约束,则此测试通过,但它会失败。我必须告诉rspec使用子域,但我不知道如何使用TIA安迪 最佳答案

ruby-on-rails - 事件记录中缺少属性

我有模型Foo和Bar。Bar有列foo_id。当我调用Bar.foo_id时,出现错误missingattribute:foo_id请记住,这不是未定义的方法错误,该列肯定在数据库中。这有哪些常见原因?谢谢 最佳答案 可能和你的find方法有关?例如,您在查找中执行了:select:Foo.find(:all,:select=>"firstvar,secondvar")在那种情况下,即使您定义了foo_id,您也只能访问firstvar和secondvar希望对您有所帮助!=) 关于r